from flask import Flask
from flask import request,render_template,Blueprint


# 创建flask的服务对象
app = Flask('hiflask')

# # 声明请求资源(动态资源)
# @app.route('/hi',methods=['GET','POST'])
# def hi():
#     # 获取平台参数值：如android、ios、pc等
#     # 只支持安卓手机,不传的话默认为pc
#     platform = request.args.get('platform','pc')
#     if platform.lower() != 'android':
#         return """
#             <h2 style="color:red;">目前只支持安卓设备</h2>
#         """
#     # 验证查询参数
#     if request.method == 'GET':
#         return """
#             <h1>用户登录界面</h1>
#             <form action='/hi?platform=android' method='post'>
#                  <input name="name" placeholder="用户名"><br>
#                  <input type='password' name="pwd" placeholder="密码"><br>
#                  <input type="submit" value="提交">
#             </form>
#             """
#     else:
#         # 获取表单参数
#         name = request.form.get("name")
#         pwd = request.form.get("pwd")
#
#         if all((
#             # 去除两端空格的验证
#             name.strip() == 'gql',
#             pwd.strip() == '123456'
#         )):
#             return """
#                 <h2 style="color:blue;">登录成功</h2>
#             """
#         else:
#             return """
#                 <h2 style="color:red;">登录失败，请<a href="/hi?platform=android">重试</a></h2>
#             """

# 请求路由R
@app.route('/bank',methods=['GET','POST'])
def addBank():
    """
    练习：
        1、GET请求返回添加银行卡的网页
        2、POST请求获取用户输入的信息，判断是否为空，为空的时候提示错误
        3、不为空在日志里面打印一下
    """

    # 加载数据(Model交互操作)
    data = {
        'title':"绑定银行卡页面",
        'error_message':"卡号和银行名称不能为空"
    }


    # 渲染模板(需要导包render_template)
    html = render_template('bank_e.html', **data)

    # raise Exception('有意出现的异常')

    return html # 将数据返回给客户端

# 启动服务
app.run('localhost',
        5000,
        True,               # 第三个值：debug：是否自动重启（保存了的话会自动重启），默认未开启
        threaded=True)      # 开启多线程，默认是不开启
        # processes=2)        # 进程数设置，默认一个进程
# 多进程和多线程不能同时开启
